home *** CD-ROM | disk | FTP | other *** search
- /*
- CONVERT.H
-
- 28-jun-88, Marc Savary, AdLib Inc.
-
- Header for conversion procedures of *.ROL files to
- *.MUS ( MIDI like) files.
- */
-
- #define SYSTEM_XOR_BYTE 0xF0
- #define EOX_BYTE 0xF7
- #define OVERFLOW_BYTE 0xF8
- #define STOP_BYTE 0xFC
-
- #define NOTE_OFF_BYTE 0x80
- #define NOTE_ON_BYTE 0x90
- #define AFTER_TOUCH_BYTE 0xA0
- #define CONTROL_CHANGE_BYTE 0xB0
- #define PROG_CHANGE_BYTE 0xC0
- #define CHANNEL_PRESSURE_BYTE 0xD0
- #define PITCH_BEND_BYTE 0xE0
-
- #define ADLIB_CTRL_BYTE 0x7F /* for System exclusive */
- #define TEMPO_CTRL_BYTE 0
-
- #define NR_VOICES 11
- #define N_ROLL_VOICES NR_VOICES
- #define TUNE_NAME_SIZE 30
- #define FILLER_SIZE 8
- #define FILLER2_SIZE 8
- #define TIMBRE_DEF_LEN 28
- #define TIMBRE_DEF_SIZE ( TIMBRE_DEF_LEN * sizeof( int))
- #define OVERFLOW 240
- #define DEFAULT_TICK_BEAT 240
-
- struct MusHeader {
- char majorVersion;
- char minorVersion;
- long tuneId;
- char tuneName[ TUNE_NAME_SIZE];
- char tickBeat;
- char beatMeasure;
- long totalTick;
- long dataSize;
- long nrCommand;
- char filler[ FILLER_SIZE];
-
- char soundMode; /* 0: melodic, 1: percussive */
- char pitchBRange; /* 1 - 12 */
- unsigned basicTempo;
- char filler2[ FILLER2_SIZE];
-
- /* char data[]; */
- };
-